package com.example.netty.tcp.message;

import com.fasterxml.jackson.annotation.JsonProperty;

import java.util.ArrayList;
import java.util.List;

public class AttributeReport extends BaseMessage {
    public AttributeReport() {
        setMsgType(310); // 属性上报请求类型
    }

    @JsonProperty("attrList")
    private List<Attribute> attrList = new ArrayList<>();

    // 添加属性条目
    public void addAttribute(String signalId, String value) {
        Attribute attr = new Attribute();
        attr.setId(signalId);
        attr.setValue(value);
        attrList.add(attr);
    }

    public List<Attribute> getAttrList() {
        return attrList;
    }

    // 属性条目内部类
    public static class Attribute {
        @JsonProperty("id")
        private String id; // 信号量ID（如"01113001"）
        @JsonProperty("value")
        private String value; // 信号量值

        public String getId() { return id; }
        public void setId(String id) { this.id = id; }
        public String getValue() { return value; }
        public void setValue(String value) { this.value = value; }
    }
}
